草庐IT

java - 模拟 UIInput 类进行测试

全部标签

javascript - 使用 Jest 和 enzyme 进行 IndexedDB 测试 - ReferenceError : indexedDB is not defined

我正在为我的应用程序寻求单元测试方面的帮助,我正在使用indexedDB。在我实现indexedDB功能之前,测试是正确的。但是现在,对于所有这些,我都看到一个错误:ReferenceError:indexedDBisnotdefined有人可以给我建议如何消除该错误吗?我正在搜索信息,并尝试了不同的方法来模拟window或indexedDB,但没有结果。 最佳答案 这个问题是由于Dexie期望window.indexedDB被定义,当以没有真正的DOM或的headless模式(使用Jest)运行时,情况并非如此窗口范围。在Dexi

javascript - JSDom 11.12.0 - 如何模拟 localStorage?

自从最新版本的JSDom以来,我无法再模拟localStorage。我试过以下方法:Object.defineProperty(window,'localStorage',{value:LocalStorageMock})window.localStorage=LocalStorageMock;jest.spyOn(window.localStorage,'setItem')任何这些方法都不适合我,我总是得到原始的localStorage。 最佳答案 setItemSpy=jest.spyOn(Storage.prototype,'

javascript - 根据另一个单词数组对单词数组进行排序

这个问题在这里已经有了答案:Usearrayassortorder(4个答案)关闭4年前。我有一个这样的数组:unorderedArr=['pear','apple','banana','peach','pineapple'];我想根据另一个给定的数组来排序这个数组,如下所示:order=['peach','apple','pineapple']首选结果是:orderedArr=['peach','apple','pineapple','banana','pear'];不在顺序数组中的单词放在什么索引上并不重要。不保证order数组中的词在无序数组中就一定会出现当前代码解决方案我试过使

javascript - 如何构建异步函数的测试?

我习惯于使用标准的NodeJsassert库编写Mocha测试,如下所示:describe('Somemodule',()=>{varresult=someCall();it('Should',()=>{assert.ok(...);});})但现在我的电话返回了一个promise......所以我想写:describe('Somemodule',async()=>{varresult=awaitsomeCall();it('Should',()=>{assert.ok(...);});})但它不起作用。我的测试根本不运行。奇怪的是,describe('Somemodule',asyn

javascript - 将真/假数组与其他数组进行比较

比较两个数组并返回包含来自array2的值的第三个数组的最快方法是什么,其中来自array1的关联值是true?constarray1=[true,false,false,true];constarray2=['a','b','c','d'];结果应该是:constresult=['a','d']; 最佳答案 使用过滤器。constarray1=[true,false,false,true];constarray2=['a','b','c','d'];constres=array2.filter((_,i)=>array1[i]);

java - 浏览器 Java 插件检测

确定浏览器中是否安装了SunJava插件的首选方法是什么? 最佳答案 javadeploymenttoolkitscriptsrc="http://java.com/js/deployJava.js"if(deployJava.versionCheck('1.6')){alert("1.6installed")} 关于java-浏览器Java插件检测,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/q

java相当于swfobject

寻找一个像swfobject这样的javascript类来嵌入java并在用户没有java或拒绝安全提示时有一个简单的回退。谢谢,乔希 最佳答案 您可以很容易地构建一个。像这样设置一个div:MessagetousersayingthattheyneedJavahere然后添加JavaPluginDetection(builder)到你的JavaScript。然后,如果返回true,则执行如下操作:document.getElementById("java-applet").innerHTML="stuffhere";

javascript - 有没有一种可行的方法来对图像 :data base64 进行特征检测支持

使用类似的东西:background:url(data:image/gif;base64,R0lGODlhIwAhALMAAAAAADQ0NENDQ25ubouLi6ioqLa2ttPT0/Dw8P///wAAAAAAAAAAAAAAAAAAAAAAACwAAAAAIwAhAAAIpQABCBxIsCCAAAYTKlw4cECCAQwjMnSY4KHEiwQpVrSIUaLGjRw7Kvy4EYEAkSNBljyJ0iDJiiZbulQJk6XMhjQTxLyJk+ZOngBe6rTJU+jPojmTKqXZc6nTpAKFPp0qsMDUqyoHWsWKleBWrk8LfgV5AKj

javascript - 使用 JavaScript 进行 URL 检测

我正在使用以下脚本强制特定页面-当第一次加载时-进入(第三方)iFrame。if(window.top==window){location.reload()}else{}(澄清一下:这种“嵌入”是由第三方系统自动完成的,但前提是页面刷新一次-出于样式和其他一些原因,我希望它从一开始就存在。)现在,我想知道是否可以通过能够检测其“父”文档的当前URL以触发特定操作的方式来增强此脚本?假设第三方站点的URL是“http://cgi.site.com/hp/”...'和iFrame的URL'http://co.siteeps.com/hp/...'。有可能实现某事吗?像这样使用JS:if(U

java - 有效地在不同的虚拟机之间复制对象

我觉得我要问一个“愚蠢”的问题,但我必须问...我有2个虚拟机。我想将一个对象的实例从一个复制到另一个,是否可以在VM的堆中复制表示此对象的位,将其发送到另一个VM,就像另一个VM只需要在它的内存中分配这些位并在它的堆栈中添加一个引用到这个内存插槽...?目前,为了做这样的事情,我们序列化对象并反序列化它,这比按原样复制实例效率低得多(在计算方面)...解析是一种计算浪费...JS序列化示例:每个VM都是V8的一个实例(JavaScript),一种方法是将对象转换为JSON(JSON.stringify),将它发送到另一个VM,后者获取字符串并将其转换回对象(例如varmyObject